1. Field of the Invention
The present invention relates to a disc apparatus for use in an optical disc drive using an optical disc in which data can be recorded once or a plurality of times, for example.
2. Description of the Prior Art
In the prior art, optical discs (magneto-optical disc) have been used to store mass data, such as image data or the like.
FIG. 1 of the accompanying drawings shows an example of a track pattern of such conventional optical disc. As shown in FIG. 1, in the optical disc, the track begins with 0 from the outside and ends with alternate tracks AT0, AT1, AT2 which will be described later on. One track is comprised of a plurality of sectors (for areas), and one sector is comprised of 512 bytes. While the track pattern is concentric in shape as shown in FIG. 1 for simplicity, the track pattern is not limited thereto and may be spiral in shape. In this case, the arrangement of one track and the arrangement of one sector are similar as described above.
In FIG. 1, sectors Tn-2s0, Tn-2s1, Tn-2s2 of n-2th track, a sector Tn-1s0 of n-1th track and a sector Tns0 of nth track constitute a part of the whole optical disc.
An optical disc drive is used to write data on the optical disc and to read out the data stored on the optical disc. The optical disc drive comprises a drive controller for writing data on the optical disc and reading out the data stored on the optical disc by driving an optical head, an optical data controller (ODC) for supplying data to the drive controller and receiving data from the drive controller and a system controller for controlling the drive controller and the optical data controller on the basis of a command signal from a host equipment (e.g., computer).
The drive controller includes a DSP (digital signal processor) which becomes the center of control and the system controller includes a CPU (central processing unit) which becomes the center of control.
When data is written on the optical disc, data supplied from the host equipment is temporarily stored in an internal memory by the optical data controller in response to a command signal from the system controller, and then read out from the memory. The data thus read out is processed in some suitable data processing fashion, such as addition of error correction code (ECC) or the like and then supplied to the drive controller so that the data is written in the optical disc by the optical head of the drive controller.
When data is read out from the optical disc, data stored on the optical disc is read out by the optical head of the drive controller in response to a command signal from the system controller. The data thus read out is supplied from the drive controller to the optical data controller, in which it is processed in some suitable data processing fashion, such as error detection and error correction and then temporarily stored in the memory. Then, the data is read out from the memory and fed to the host equipment.
FIG. 2 is a diagram showing an example of a format of the optical disc. As shown in FIG. 2, one sector is comprised of 1 byte data Da0, Da1, Da2, Da3, . . . , Dan, data Db0, Db1, Db2, Db3, . . . , Dbn, data Dc0, Dc1, Dc2, Dc3, . . . , Dcn, data Dd0, Dd1, Dd2, Dd3, . . . , Ddn, data De0, De1, De2, De3, . . . , Den and error correction codes ECC0, ECC1, ECC2, ECC3 and ECC4 added to the above-mentioned data rows.
One data row is formed of 104 bytes and each of the error correction codes ECC0 through ECC4 is formed of 16 bytes added to one data row.
It is customary that these data are sequentially written on the optical disc in the sector unit. As shown in FIG. 3, when data shown in FIG. 2 are written on the optical disc, these data are interleaved at every five data in such a way as Da0, Db0, Dc0, Dd0, De0, Da1, Db1, Dc1, Dd1, De1, . . . , Dan, Dbn, Dcn, Ddn, Den, which is generally referred to as "five interleaving".
When data is read out from the optical disc, the above-mentioned interleaved data rows are de-interleaved to the original data rows of every line shown in FIG. 2 and error-detected at every sector by using the error correction code (ECC) shown in FIG. 2. If it is determined by the error detection that a line has four errors or less and a sector has 20 errors or less, then such sector is not regarded as a defective sector. If however it is determined that a line has four errors or greater and one sector has 20 errors or greater, then such sector is regarded as a defective sector. The ECC has an error correction capability such that 8 errors per line can be error-corrected at maximum.
Since there is the possibility that a defective sector will be produced in the manufacturing process of the optical disc, prior to the delivery of the optical disc products, the optical disc manufacturer writes inspection data in the whole surface of the optical disc and reads out the inspection data thus written on the optical disc. When the written data is read out, it is determined whether or not there is any sector which exceeds the above-mentioned error tolerance range. This inspection is referred to as a "disc certify". After this inspection is performed, data is written in a table on the optical disk such that the defective sectors can be recognized as inaccessible.
FIG. 4 shows an example of such a table. In FIG. 4, reference symbol T0 depicts the track 0 of the optical disc, and reference symbol Tn depicts a track n of the optical disc. As shown in FIG. 4, the data of tables Tab1 and Tab2 representing the defective sector are formed at the leading track and tables Tab3 and Tab4 representing the defective sector are formed at the last track. When the optical disc apparatus is powered on, any data in tables Tab1 to Tab4 is read out and stored in memory. Thereafter, when data is written or read out, the defective sector can be prevented from being used by checking for the data of tables Tab1 to Tab4 stored in memory.
The reason that four tables Tab1 to Tab4 are provided is to improve reliability by using the data of the table Tab2 when the data of the table Tab1 is defective, to use the data of the table Tab3 when the data of the table Tab2 is defective and to use the data of the table Tab4 when the data of the table Tab3 is defective.
The use of the table data will be described in more detail with reference to FIG. 1. When the sector Tn-2s1 of the n-2th track shown in FIG. 1 is a defective sector, information indicating that the sector Tn-2s1 is a defective sector is stored in the above-mentioned tables. Specifically, although the sector Tn-2s1 shown in FIG. 1 should be used as the sector 1 from a physical position standpoint, the sector Tn-2s2 is stored as the sector 1 because sector Tn-2s1 is defective. Therefore, the optical disc apparatus uses the sector Tn-2s2 as the sector 1.
The method for preventing the defective sector from being used by assigning the sector No. to the next sector after a defective sector when a defective sector is detected by the disc certify is generally referred to as "SSA" (sector slipping algorithm).
It is frequently observed that a defective sector can occur after the defective sectors have been identified by the disc certify and tables constructed than. In that case, the new defective sector is excluded by performing additional sector slipping, and all sector Nos. of sectors following the new defective sector are shifted.
In the present invention, a LRA (linear replacement algorithm) is proposed as a method in which a defective sector occurring after the disc certify is not used and the sector numbers assigned in the disc certify need not be shifted.
It is customary that, when data is written on an optical disc, a "disc verify" step is performed to verify that the data is written accurately. The "disc verify" is performed by reading out stored data after the data was written to verify whether or not the data is written correctly. According to the linear replacement algorithm (LRA), if it is determined by the disc verify that data is not correctly written in a sector, then such sector is defective and replacement sectors are formed in the alternate tracks AT0 and AT1 shown in FIG. 1, for example. Then, the sector No. of the sector that was determined to be defective is assigned to the newly formed replacement sector.
If it is determined by the disc verify that the sector Tn-2s1 of the n-2th track is a defective sector, then a new replacement sector is formed in alternate track AT0, for example, and data that should be written in the defective sector is written in the replacement sector.
Upon reading, after data of the sector Tn-2s0 of the n-2th track is read out, data of the next sector Tn-2s1 is not read out. The optical pickup (not shown) instead seeks the alternate track AT0 to read out the data of the replacement sector of the alternate track AT0. Subsequently, the optical pickup seeks the n-2th track to read out data of the sector Tn-2s2 of the n-2th track.
FIG. 5 is a diagram showing the processing flow used when data is read out from an optical disc. In FIG. 5, reference symbols n-1 to n+6 depict physical sector Nos., respectively. Reference symbol n+5' depicts a sector No. of the sector formed on the above alternate track. Solid arrows with reference symbols Ca depict command signals supplied from the CPU of the system controller to the DSP of the drive controller. Also, solid arrows with reference symbols Cb depict command signals supplied from the CPU of the system controller to the optical data controller. Solid arrows with reference symbols Aa depict answer signals, representing that the processing is normally completed, that are supplied from the DSP of the drive controller to the CPU of the system controller. Solid arrows with reference symbols Ab depict answer signals supplied from the optical data controller to the CPU of the system controller.
Reference symbol Def1 which corresponds to the position of the physical sector No. n+2 depicts a sector which is detected as a defective sector upon disc certify. Reference symbol Def2, which corresponds to the physical sector No. n+5, depicts a sector which is detected as a defective sector by a "disc verify" executed when data is written after the disc certify. A replacement sector of the defective sector becomes the sector whose physical sector No. is n+5'.
Assuming now that the physical sector begins with n-1 shown in FIG. 5, then when it is determined by the disc certify that the sector of the physical sector No. n+2 is the defective sector, the sector Nos. of the physical sector Nos. n-1, n+0, n+1, n+3. n+4, n+5, n+6 sequentially become 0, 1, 2, 3, 4, 5, 6, for example. That is, the tables Tab1 to Tab4 reveal that the physical sector No. n+2 is the defective sector.
The sector of the physical sector No. n+5 that was detected as the defective sector when the disc is verified is not accessed but, instead, the sector of the physical sector No. n+5', which is the replacement sector, is accessed.
The data read-out operation executed by the CPU of the system controller, the DSP of the drive controller and the optical data controller will be described below.
When a read-out request signal representing the read of the data of the sectors ranging from the physical sector Nos. n+0 to n+6 is transmitted from the host equipment to the CPU of the system controller, the CPU of the system controller supplies the optical data controller with a command signal Cb1 representing that the data of 2 sectors should be stored in the memory. The reason that the command signal represents that the data of 2 sectors should be stored in the memory to the optical data controller is to read out the data of before the sector of sector No. n+1 because sector No. n+2 is the defective sector Def1.
Subsequently, the CPU of the system controller supplies the DSP of the drive controller with the command signal Ca1 representing that data of 2 sectors should be read out from sector No. n+0.
When the command signal Ca1 from the CPU of the system controller is transmitted to the DSP of the drive controller, data of 2 sectors from the sector of the physical sector No. n+0 (i.e., data of the sectors of the physical sector Nos. n+0 and n+1) of the optical disc is read out by the optical head and the data thus read out is supplied to the optical data controller. The data of 2 sectors supplied to the optical data controller is stored in the memory.
Then, the answer signal Aa1 for the command signal Ca1 is supplied from the DSP of the drive controller to the CPU of the system controller and the answer signal Ab1 for the command signal Cb1 is supplied from the optical data controller to the CPU of the system controller.
Thereafter, the CPU of the system controller supplies the optical data controller with the command signal Cb2 representing that data of 2 sectors ranging from the sector Nos. n+3 and n+4 should be stored in the memory. Then, the CPU of the system controller supplies the DSP of the drive controller with the command signal Ca2 representing that data of 2 sectors from the sector of the physical sector No. n+3 should be read out.
When the command signal Ca2 from the CPU of the system controller is transmitted to the DSP of the drive controller, data of 2 sectors from the sector of the physical sector No. n+3 (i.e., data of the sectors of the physical sector Nos. n+3 and n+4) of the optical disc is read out by the optical head of the drive controller, and the data thus read out is supplied to the optical data controller. The data of 2 sectors supplied to the optical data controller is stored in the memory.
Subsequently, the answer signal Aa2 for the command signal Ca2 is supplied from the DSP of the drive controller to the CPU of the system controller, and the answer signal Ab2 for the command signal Cb2 is supplied from the optical data controller to the CPU of the system controller.
When the answer signals Aa2 and Ab2 are supplied, the CPU of the system controller carries out a seek operation in order to read out data of the sector of the physical sector No. n+5' which is the replacement sector of the defective sector Def2 because the sector of the physical sector No. n+5 is the defective sector Def2.
Before the data of the sector of the physical sector No. n+5' the readout after the CPU of the system controller has carried out the seek operation, the CPU of the system controller supplies the optical data controller with the command signal Cb3 representing that data of 1 sector should be stored in the memory. Thereafter, the CPU of the system controller supplies the DSP of the drive controller with the command signal Ca3 representing that data of 1 sector should be read out from the sector of the physical sector No. n+5'. As described above, since the sector of the physical sector No. n+5 is the sector which was detected as the defective sector when the disc was verified, the CPU of the system controller instructs the DSP of the drive controller to read out data from the replacement sector of the defective sector, i.e., the sector of the physical sector No. n+5 of the alternate track.
When the command signal Ca3 from the CPU of the system controller is transmitted to the DSP of the drive controller, data of 1 sector from the physical sector No. n+5' (i.e., data of the sector of the physical sector No. n+5') of the optical disc is read out by the optical head of the drive controller, and the data thus read out is supplied to the optical data controller. The data of 1 sector supplied to the optical data controller is stored in the memory.
Then, the answer signal Aa3 for the command signal Ca3 is supplied from the DSP of the drive controller to the CPU of the system controller, and the answer signal Abs for the command signal Cb3 is supplied from the optical data controller to the CPU of the system controller.
When the answer signals Aa3 and Ab3 are supplied, the CPU of the system controller effects the seek operation on the track of the sector n+6 in order to read out data of the sector of the physical sector No. n+6.
The CPU of the system controller supplies the optical data controller with the command signal Cb4 representing that data of one sector should be stored in the memory.
Subsequently, the CPU of the system controller supplies the DSP of the drive controller with the command signal Ca4 representing that data of 1 sector should be read out from the sector of the physical sector No. n+6.
When the command signal Ca4 from the CPU of the system controller is supplied to the DSP of the drive controller, data of 1 sector from the sector of the physical sector No. n+6 (i.e., data of the physical sector No. n+6) of the optical disc is read out by the optical head of the drive controller, and the data thus read out is supplied to the optical data controller. The data of 1 sector supplied to the optical data controller is stored in the memory.
Thereafter, in this example, at the succeeding position of the position of a physical sector No. n+7 (not shown), the answer signal Aa4 for the command signal Ca4 is supplied from the DSP of the drive controller to the CPU of the system controller, and the answer signal Ab4 for the command signal Cb4 is supplied from the optical data controller to the CPU of the system controller.
In the above-mentioned example, however, since the defective sector detected by the disc certify exists, command signals are issued twice in order to access the sectors of the physical sector Nos. n+0 and n+1. Further, command signals are issued twice in order to access the sector of the physical sector No. n+2, i.e., the sectors of the physical sector Nos. n+3 and n+4 following the defective sector. In the abovementioned example, although the command signal supplied from the host equipment side represents that the sectors of the physical sector Nos. n+0 to n+6 should be accessed, because of the defective sector detected by the disc certify, the command signals must be issued four times in sum total in order to access the sectors of the physical sector Nos. n+0 to n+4.
If the answer signals Aa1 and Ab1 and the command signals Ca2 and Cb2 were not issued within a time of one sector of the physical sector No. n+2, the sectors would not be accessed until the optical disc is rotated once. In the example shown in FIG. 5, since the command signal Ca2 is issued within a time of the sector of the sector No. n+2 and the command signal Ca4 is issued within a time of the sector of the sector No. n+4, the sectors can be accessed regardless of the revolution of the optical disc. Since, however, a time of one sector is 400 .mu.sec, there is then the large possibility that the sector will not be accessed until the optical disc is rotated once (referred to hereinafter as "one rotation waiting" for simplicity). When the optical disc is rotated at the rotational speed of 2400 r.p.m., for example, if the sector is not accessed until the optical disc is rotated once, then there occurs a delay time of 25 msec. Therefore, if the sector is not accessed until the optical disc is rotated once, there is then the disadvantage that the data transfer rate is lowered.
Further, if the defective sector that was detected as the defective sector by the disc verify falls within an access range, the seek operation must be effected on the track ranging from the defective sector Def2 to the position at which the replacement sector of the physical sector No. n+5' of the alternate track is accessed, and the replacement sector must be accessed, whereafter the seek operation must be carried out again in order to access the next sector (physical sector No. n+6) of the defective sector Def2. Specifically, if the seek operation is carried out in order to access the sector of the alternate track each time the defective sector is accessed and the seek operation is again carried out in order to access the next sector of the defective sector as described above, then it is natural that the data transfer rate is lowered.
Furthermore, as is clear from the above description, the similar disadvantage occurs also when data is written on the optical disc.